IF exists(SELECT * FROM dbo.sysobjects WHERE name='brengHulptabelGemiddeldeNaarLoopbaan' AND xtype='P') 
BEGIN
	DROP PROCEDURE brengHulptabelGemiddeldeNaarLoopbaan
END
GO

CREATE   procedure brengHulptabelGemiddeldeNaarLoopbaan
as
declare @jaar1 varchar(2)
declare @jaar2 varchar(2)
select top 1 @jaar1=jaar from hulptabelPUNTGemiddelde order by jaar
select @jaar2 = jaar from hulptabelPUNTGemiddelde order by jaar

if not(@jaar1 = @jaar2) 
  raiserror('Er zijn foute jaartallen in de gegevens van PUNT-gemiddelde geslopen',16,1)
else
  begin
	delete from studiegegevens..gemiddelde
	where jaar = '20' + @jaar1

	insert into studiegegevens..gemiddelde(jaar,klas,
	vakcode,gem_dw1,gem_ex1,gem_tot1,gem_dw2,gem_ex2,gem_tot2,
	gem_dw3,gem_ex3,gem_tot3,gem_dw4,gem_ex4,gem_tot4,lk_ident)

	select distinct '20'+ @jaar1,dT.klas,dT.vakcode,
	d1.c1,d1.c2,d1.c3,
	'-1','-1','-1',
	d2.c1,d2.c2,d2.c3,
	dT.c1,dT.c2,dT.c3,dT.naamcode
	from
	(select h.*,a.naamcode from hulptabelPUNTGemiddelde as h
		left join ambtsverdeling as a
		  on (a.vakcode = h.vakcode) and (a.klas= h.klas)
	where periode='T') as dT  
	  full join (select * from hulptabelPUNTGemiddelde where periode='1') as d1
	    on (dT.klas = d1.klas) and (dT.vakcode = d1.vakcode)
	  full join(select * from hulptabelPUNTgemiddelde where periode='2') as d2
	    on (dT.klas = d2.klas) and (dT.vakcode = d2.vakcode)
  end